package cn.com.chengmandian.xh.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 电池表
 * </p>
 *
 * @author AutoGenerator
 */
@Getter
@Setter
@TableName("xh_battery")
@ApiModel(value = "XhBattery对象", description = "电池表")
public class XhBattery implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty("电池规格ID")
    private Integer batteryInfoId;

    @ApiModelProperty("电池编号")
    private String batteryNo;

    @ApiModelProperty("城满电编号")
    private String cmdNo;

    @ApiModelProperty("rfid编号")
    private String rfidNo;

    @ApiModelProperty("托盘码")
    private String palletNo;

    @ApiModelProperty("库存货品ID")
    private Integer stockGoodsId;

    @ApiModelProperty("库存采购批次ID")
    private Integer stockPurchaseBatchId;

    @ApiModelProperty("库存发货批次ID")
    private Integer stockSendBatchId;

    @ApiModelProperty("库存发货ID")
    private Integer stockSendId;

    @ApiModelProperty("库存发货时间")
    private Date stockSendTime;

    @ApiModelProperty("区域类型 1-良品区 2-不良品区 3-已返修区")
    private Integer areaType;

    @ApiModelProperty("区域原因 11-不充电 12-不放电 13-接口坏 14-外观不良 19-其他")
    private Integer areaReason;

    @ApiModelProperty("区域更改时间")
    private Date areaChangeTime;

    @ApiModelProperty("电池类型：1.锂离子电池2.铅酸电池3.镍氢电池")
    private Integer snapBatteryType;

    @ApiModelProperty("电压(V)")
    private Integer snapVoltage;

    @ApiModelProperty("安时(Ah)")
    private Integer snapAmpereHour;

    @ApiModelProperty("电池重量(kg)")
    private BigDecimal snapWeight;

    @ApiModelProperty("可用电量")
    private String snapEnergy;

    @ApiModelProperty("可用公里数(km)")
    private BigDecimal snapMileage;

    @ApiModelProperty("可用时长(单位分钟)")
    private BigDecimal snapDuration;

    @ApiModelProperty("市场售价")
    private BigDecimal snapMarketPrice;

    @ApiModelProperty("描述")
    private String snapBatteryDes;

    @ApiModelProperty("(废弃)可用电量")
    private String energy;

    @ApiModelProperty("(废弃)快照可用公里数(km)")
    private BigDecimal mileage;

    @ApiModelProperty("(废弃)可用时长(单位分钟)")
    private BigDecimal duration;

    @ApiModelProperty("二维码")
    private String qrCode;

    @ApiModelProperty("二维码地址")
    private String qrCodeUrl;

    @ApiModelProperty("(废弃)是否满电：0.否1.是(默认)")
    private Integer isFullEnerge;

    @ApiModelProperty("电池状态：1.正常(默认)2.已用完3.损坏")
    private Integer batteryStatus;

    @ApiModelProperty("租赁状态：0.未租赁(默认)1.预约锁定2.租赁中 3.已购买")
    private Integer rentStatus;

    @ApiModelProperty("租用人ID")
    private Integer rentUserId;

    @ApiModelProperty("租用人姓名")
    private String rentUsername;

    @ApiModelProperty("租用次数")
    private Integer rentNum;

    @ApiModelProperty("关系ID")
    private Integer relationId;

    @ApiModelProperty("关系类型:1.仓库2.门店3.机柜4.B端公司5.配送员6.C端客户")
    private Integer relationType;

    @ApiModelProperty("所属仓库")
    private Integer warehouseId;

    @ApiModelProperty("电池用途:0.未知 4.B端公司 7.合作商")
    private Integer purposeType;

    @ApiModelProperty("用途ID")
    private Integer purposeId;

    @ApiModelProperty("电池所有者类型：0.未知 1.城满电 4.B端客户 6.C端客户 7.合作商")
    private Integer ownerType;

    @ApiModelProperty("电池购买者标识")
    private Integer ownerId;

    @ApiModelProperty("是否换电0  1")
    private Integer isCharging;

    @ApiModelProperty("下架记录标识")
    private Integer outputId;

    @ApiModelProperty("电池出入库状态：1.入库2.出库")
    private String outInStatus;

    @ApiModelProperty("最后出入库时间")
    private Date outInTime;

    @ApiModelProperty("最后换电时间")
    private Date lastChargeTime;

    @ApiModelProperty("是否启用：0.否1.是(默认)")
    private Integer isEnabled;

    @ApiModelProperty("是否删除：0.否(默认)1.是")
    @TableLogic(value = "0" ,delval = "1")
    private Integer isDeleted;

    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("创建人ID")
    private Integer creatorId;

    @ApiModelProperty("创建人")
    private String creator;

    @ApiModelProperty("更新时间")
    private Date modifyTime;

}
